package com.alinesno.cloud.initializr.starter.entity;

import com.alinesno.cloud.common.facade.mapper.entity.BaseEntity;
import com.alinesno.sdk.generator.table.annotation.Column;
import com.alinesno.sdk.generator.table.annotation.ColumnComment;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;

/**
 * 种子工程项目基本信息
 * 
 * @author WeiXiaoJin
 * @since 2021年6月19日 上午6:07:05
 */
@SuppressWarnings("serial")
@TableName("build_project_info")
public class ProjectInfoEntity extends BaseEntity {

	@ColumnComment("应用名称")
	@Column(length = 64)
	@TableField
	private String projectName;
	
	@ColumnComment("应用代码")
	@Column(length = 64)
	@TableField
	private String projectCode ;

	@ColumnComment("项目工程名称")
	@Column(length = 64)
	@TableField
	private String artifactId; // 项目工程名称

	@ColumnComment("所在分组")
	@Column(length = 64)
	@TableField
	private String groupId; // 所在分组

	@ColumnComment("服务端口")
	@Column(length = 8)
	@TableField
	private String servicePort; // 服务端口

	@ColumnComment("是否检测环境")
	@Column(length = 8)
	@TableField
	private String checkEnv; // 是否检测环境

	@ColumnComment("是否生成demo")
	@Column(length = 8)
	@TableField
	private String generatorDemo; // 是否生成demo

	@ColumnComment("jdk版本")
	@Column(length = 8)
	@TableField
	private String jdk; // jdk版本

	@ColumnComment("包类型")
	@Column(length = 8)
	@TableField
	private String packageType; // 包类型

	@ColumnComment("中台版本号")
	@Column(length = 16)
	@TableField
	private String alinesnoVersion; // 中台版本号

	@ColumnComment("依赖组件")
	@Column(length = 64)
	@TableField
	private String dependency; // 依赖组件

	@ColumnComment("作者名称")
	@Column(length = 32)
	@TableField
	private String author; // 作者名称

	@ColumnComment("作者邮箱")
	@Column(length = 32)
	@TableField
	private String authorEmail; // 作者邮件

	@ColumnComment("打包语言")
	@Column(length = 16)
	@TableField
	private String language; // 语言版本

	@ColumnComment("打包类型")
	@Column(length = 16)
	@TableField
	private String deployType; // 打包类型[jar/k8s/docker-compose]

	@ColumnComment("前端中台版本")
	@Column(length = 16)
	@TableField
	private String alinesnoUI; // 前端工程

	@ColumnComment("仓库名称")
	@Column(length = 64)
	@TableField
	private String repositoryName; // 仓库名称

	@ColumnComment("业务分组")
	@Column(length = 64)
	@TableField
	private String gitGroupName; // git业务分组名称

	@ColumnComment("仓库地址")
	@Column(length = 128)
	@TableField
	private String gitProjectLink; // 仓库地址

	@ColumnComment("仓库ID")
	@Column(length = 64)
	@TableField
	private String gitProjectId; // 仓库Id

	@ColumnComment("自动化操作Token")
	@Column(length = 64)
	@TableField
	private String gitRunnersToken;

	@ColumnComment("应用Icons")
	@Column(length = 512)
	@TableField
	private String icons; // 应用icons

	@ColumnComment("显示名称")
	@Column(length = 64)
	@TableField
	private String showName; // 显示名称

	@ColumnComment("域名")
	@Column(length = 64)
	@TableField
	private String domainName; // 域名

	@ColumnComment("安全存储")
	@Column(length = 128)
	@TableField
	private String storagePath; // 安全存储

	@ColumnComment("应用目标")
	@Column(length = 32)
	@TableField
	private String target; // 应用目标(k8s/docker/jar)

	@ColumnComment("日志监控")
	@Column(length = 2)
	@TableField
	private String loggerWatch; // 日志监控

	@ColumnComment("Promethues监控")
	@Column(length = 2)
	@TableField
	private String prothumensWatch; // Prometheus监控

	// >>>>>>>>>>>>>>>>>>>>>>>> k8s_start >>>>>>>>>>>>>>>>>>>>>>>>>>>>>
	@ColumnComment("镜像名称")
	@Column(length = 512)
	@TableField
	private String imageName; // 镜像名称

	@ColumnComment("镜像名称")
	@Column(length = 128)
	@TableField
	private String namespace; // 空间

	@ColumnComment("镜像密钥")
	@Column(length = 128)
	@TableField
	private String dockerSecret; // 空间
	// >>>>>>>>>>>>>>>>>>>>>>>> k8s_end >>>>>>>>>>>>>>>>>>>>>>>>>>>>>

	// >>>>>>>>>>>>>>>>>>>>>>>> ci信息_start >>>>>>>>>>>>>>>>>>>>>>>>>>>

	@ColumnComment("Jenkins工程名称")
	@Column(length = 128)
	@TableField
	private String jenkinsJobName;
	
	@ColumnComment("Jenkins任务状态")
	@Column(length = 8)
	@TableField
	private String jenkinsJobStatus ; 
	
	// >>>>>>>>>>>>>>>>>>>>>>>> ci信息_end >>>>>>>>>>>>>>>>>>>>>>>>>>>

	public String getImageName() {
		return imageName;
	}

	public String getProjectCode() {
		return projectCode;
	}

	public void setProjectCode(String projectCode) {
		this.projectCode = projectCode;
	}

	public String getJenkinsJobStatus() {
		return jenkinsJobStatus;
	}

	public void setJenkinsJobStatus(String jenkinsJobStatus) {
		this.jenkinsJobStatus = jenkinsJobStatus;
	}

	public String getJenkinsJobName() {
		return jenkinsJobName;
	}

	public void setJenkinsJobName(String jenkinsJobName) {
		this.jenkinsJobName = jenkinsJobName;
	}

	public String getDockerSecret() {
		return dockerSecret;
	}

	public void setDockerSecret(String dockerSecret) {
		this.dockerSecret = dockerSecret;
	}

	public String getNamespace() {
		return namespace;
	}

	public void setNamespace(String namespace) {
		this.namespace = namespace;
	}

	public void setImageName(String imageName) {
		this.imageName = imageName;
	}

	public String getIcons() {
		return icons;
	}

	public void setIcons(String icons) {
		this.icons = icons;
	}

	public String getShowName() {
		return showName;
	}

	public void setShowName(String showName) {
		this.showName = showName;
	}

	public String getDomainName() {
		return domainName;
	}

	public void setDomainName(String domainName) {
		this.domainName = domainName;
	}

	public String getStoragePath() {
		return storagePath;
	}

	public void setStoragePath(String storagePath) {
		this.storagePath = storagePath;
	}

	public String getTarget() {
		return target;
	}

	public void setTarget(String target) {
		this.target = target;
	}

	public String getLoggerWatch() {
		return loggerWatch;
	}

	public void setLoggerWatch(String loggerWatch) {
		this.loggerWatch = loggerWatch;
	}

	public String getProthumensWatch() {
		return prothumensWatch;
	}

	public void setProthumensWatch(String prothumensWatch) {
		this.prothumensWatch = prothumensWatch;
	}

	public String getProjectName() {
		return projectName;
	}

	public void setProjectName(String projectName) {
		this.projectName = projectName;
	}

	public String getGitProjectLink() {
		return gitProjectLink;
	}

	public void setGitProjectLink(String gitProjectLink) {
		this.gitProjectLink = gitProjectLink;
	}

	public String getGitProjectId() {
		return gitProjectId;
	}

	public void setGitProjectId(String gitProjectId) {
		this.gitProjectId = gitProjectId;
	}

	public String getGitRunnersToken() {
		return gitRunnersToken;
	}

	public void setGitRunnersToken(String gitRunnersToken) {
		this.gitRunnersToken = gitRunnersToken;
	}

	public String getRepositoryName() {
		return repositoryName;
	}

	public void setRepositoryName(String repositoryName) {
		this.repositoryName = repositoryName;
	}

	public String getGitGroupName() {
		return gitGroupName;
	}

	public void setGitGroupName(String gitGroupName) {
		this.gitGroupName = gitGroupName;
	}

	public String getAlinesnoUI() {
		return alinesnoUI;
	}

	public void setAlinesnoUI(String alinesnoUI) {
		this.alinesnoUI = alinesnoUI;
	}

	public String getServicePort() {
		return servicePort;
	}

	public void setServicePort(String servicePort) {
		this.servicePort = servicePort;
	}

	public String getDeployType() {
		return deployType;
	}

	public void setDeployType(String deployType) {
		this.deployType = deployType;
	}

	public String getLanguage() {
		return language;
	}

	public void setLanguage(String language) {
		this.language = language;
	}

	public String getAuthor() {
		return author;
	}

	public void setAuthor(String author) {
		this.author = author;
	}

	public String getAuthorEmail() {
		return authorEmail;
	}

	public void setAuthorEmail(String authorEmail) {
		this.authorEmail = authorEmail;
	}

	public String getArtifactId() {
		return artifactId;
	}

	public void setArtifactId(String artifactId) {
		this.artifactId = artifactId;
	}

	public String getGroupId() {
		return groupId;
	}

	public void setGroupId(String groupId) {
		this.groupId = groupId;
	}

	public String getCheckEnv() {
		return checkEnv;
	}

	public void setCheckEnv(String checkEnv) {
		this.checkEnv = checkEnv;
	}

	public String getGeneratorDemo() {
		return generatorDemo;
	}

	public void setGeneratorDemo(String generatorDemo) {
		this.generatorDemo = generatorDemo;
	}

	public String getJdk() {
		return jdk;
	}

	public void setJdk(String jdk) {
		this.jdk = jdk;
	}

	public String getPackageType() {
		return packageType;
	}

	public void setPackageType(String packageType) {
		this.packageType = packageType;
	}

	public String getAlinesnoVersion() {
		return alinesnoVersion;
	}

	public void setAlinesnoVersion(String alinesnoVersion) {
		this.alinesnoVersion = alinesnoVersion;
	}

	public String getDependency() {
		return dependency;
	}

	public void setDependency(String dependency) {
		this.dependency = dependency;
	}

}
